On Rewrite Programs: Semantics and Relationship with Prolog
نویسندگان
چکیده
Rewrite programs are logic programs represented as rewrite rules, whose execution mechanism usually employs some version of Knuth-Bendix type completion. Rewrite programs allow one to express mutually exclusively defined predicates as well as those which are not. In this paper we demonstrate that rewrite programs, although denotationally equivalent to Prolog on the ground level, may produce fewer answers in general. Consequently, a rewrite program may halt with finitely many answers while the corresponding Prolog program goes into an infinite loop. In order to explain these observations, we present a precise operational semantics for rewrite programs, define their denotational (fixpoint) semantics, prove the equivalence of operational, model theoretic and denotational semantics, and clarify the relationship between rewrite programs and Prolog. Comparisons between the pruning effects of simplification and those of subsumption based loop checking mechanisms for Prolog are also included. Running title: On Rewrite Programs
منابع مشابه
Operational and Denotational Semantics of Rewrite Programs
In this paper we present a new operational and denotational semantics for rewrite systems as logic programs. The main feature of our rewrite programs is that they allow us to define predicates not only by implications as in Prolog, but also by equivalences. We give a few examples showing how rewrite programs may turn out to be more effective than Prolog programs in capturing the user’s intended...
متن کاملProving termination of CHR in Prolog: A transformational approach
In this paper we present a termination preserving transformation from Constraint Handling Rules to Prolog. The transformation is sound w.r.t. termination under the theoretical semantics of Constraint Handling Rules. It does not consider the presence of a propagation history. The transformation allows for the direct reuse of termination proof methods from Logic Programs and Term-Rewrite Systems,...
متن کاملAnswers Synthesis for CLP with Negation
Rewrite techniques can be used to execute logic programs in order to avoid some drawbacks of classical Prolog resolution. Logic programs are represented as rewrite programs whose operational mechanism, inspired from Knuth-Bendix completion, allows to prune some unnecessary computations and offers a synthesis ability which enables to represent infinite sets of answers as finite sets of formulas....
متن کاملFitting Semantics for Conditional Term Rewriting
This paper investigates the semantics of conditional term rewriting systems with negation, which may not satisfy desirable properties like termination. It is shown that the approach used by Fitting [5] for Prolog-style logic programs is applicable in this context. A monotone operator is developed, whose fixpoints describe the semantics of conditional rewriting. Several examples illustrate this ...
متن کاملAnswer Synthesis for CLP Programs with Negation
Rewrite techniques can be used to execute logic programs in order to avoid some drawbacks of classical Prolog resolution. Logic programs are represented as rewrite programs whose operational mechanism, inspired from Knuth-Bendix completion, allows to prune some unnecessary computations and ooers a synthesis ability which enables to represent innnite sets of answers as nite sets of formulas. We ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- J. Log. Program.
دوره 14 شماره
صفحات -
تاریخ انتشار 1992